package com.ry.zymall.product;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

/***
 * 1.整合mybatis-Plus
 *  <dependency>
 *             <groupId>com.baomidou</groupId>
 *             <artifactId>mybatis-plus-boot-starter</artifactId>
 *             <version>3.2.0</version>
 *         </dependency>
 *
 * 2.逻辑删除
 * （1）配置全局的逻辑删除规则
 * （2）给Bean 上加逻辑删除注解@TableLogic(value = "1",delval = "0")
 *
 * 3.JSR 303
 *  1)给Bean 上加注解 javax.validation.constraints.NotBlank; 并定义自己的mesage
 *  2)开启验证功能 @Valid
 *      效果：验证错误以后会有默认的相应
 *  3) 给校验的Bean后添加  BindingResult result  就可以获取到校验的结果
 *  4) 分组校验（多场景的复杂校验）
 *      1）@NotBlank(message="品牌名必须提交",groups={AddGroup.class,UpdateGrop.class})
 *      2)(@Validated({UpdateGroup.class})
 *      3）默认没有指定分组的校验注解@NotEmpty ，在分组校验情况(@Validated({UpdateGroup.class})下不生效
 *  5）自定义校验
 *      1)
 *
 */
@EnableDiscoveryClient //开启注册发现功能
@MapperScan("com.ry.zymall.product.dao")
@SpringBootApplication
public class ZymallProductApplication {

    public static void main(String[] args) {
        SpringApplication.run(ZymallProductApplication.class, args);
    }

}
